<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<title></title>
</head>
<body>
<script type="text/javascript">
	/*
## 值类型和引用类型
JavaScript 中的数据类型可以分为两种类型：

	- 基本数据类型(值类型)：字符串（String）、数字（Number）、布尔（Boolean）、空（Null）、未定义（Undefined）、Symbol、bigint
	- 复杂数据类型(引用类型)：对象（Object）、数组（Array）、函数（Function）

### 栈和堆
	栈(stack)*：栈会自动分配内存空间，会自动释放，存放基本类型和引用数据类型的变量

	​	所有在函数/方法中定义的变量都是放在栈内存中，随着函数/方法的执行结束，这个函数/方法的内存栈也自然销毁。

	​	优点：存取速度比堆快。 缺点：存在栈中的数据大小与生存期必须是确定的，缺乏灵活性。

	堆(heap) :动态分配的内存，大小不定也不会自动释放，存放引用类型的对象，指那些可能由多个值构成的对象，保存在堆内存中。

	​	堆内存中的对象不会随方法的结束而销毁，即使方法结束后，这个对象还可能被另一个引用变量所引用(参数传递)。创建对象是为了反复利用。
	*/
</script>
</body>
</html>